.. _cemHomeIsBusy: cemHomeSuccess_Get =================== ------------------- SYNOPSIS ````````````` .. code-block:: none VT_I4 cemHomeIsBusy( [in] VT_I4 Axis, [out] VT_PI4 IsBusy ) DESCRIPTION ````````````` - 지정한 축이 현재 원점 복귀를 진행 중인지를 IsBusy 버퍼를 통하여 반환합니다. PARAMETER ````````````` - Axis : 축 번호. 통합 축으로 관리되는 축 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, (최대 통합 축 개수 - 1) 이하의 값을 축 번호로 설정할 수 있습니다. - IsBusy : 현재 원점 복귀가 진행 중인지를 알려 주는 값을 반환 받을 버퍼. 이 값에 반환되는 값의 의미는 다음과 같습니다. .. csv-table:: :widths: 10 85 :header-rows: 1 :stub-columns: 0 Value, Meaning 0(cmFALSE), 지정한 축은 현재 원점복귀가 진행 중이지 않습니다. 1(cmTRUE), 지정한 축은 현재 원점복귀를 진행하고 있습니다. RETURN VALUE ````````````` - 함수 수행 여부를 반환합니다. +----------------+-----------+ | Value | Meaning | +================+===========+ | 음수 | 수행 실패 | +----------------+-----------+ | 0 (ceERR_NONE) | 수행 성공 | +----------------+-----------+ REFERENCE ``````````` - ceSDK 라이브러리에서는 cemSxIsDone 과 같이 일반적으로 모션이 진행 중이냐 아니면 정지해 있느냐를 확인할 때, 진행 중(Busy)을 확인하기 보다는 완료(Done)를 확인하는 방식을 채택합니다. 그러나 원점복귀에서는 cemHomeSuccess_Get 함수와 혼동될 소지가 있어서 cemHomeIsDone 함수 대신에 cemHomeIsBusy 함수를 제공하게 되었습니다. \ - cemHomeIsBusy 함수의 IsBusy 버퍼에 0(CE_FALSE) 값이 반환되면 원점복귀가 완료되었음을 의미하지만 성공 여부는 알 수가 없습니다. 예를 들어 원점복귀 진행 중에 Limit 또는 Alarm 등과 같은 에러에 의해서 정지되었거나, Stop 함수에 의해서 강제로 정지되었을 때도 IsBusy 에는 0(CE_FALSE) 값이 반환됩니다. 따라서 cemHomeIsBusy 함수를 이용하여 원점 복귀 이송이 완료되었음을 확인한 후에는 cemHomeSuccess_Get 함수를 사용하여 원점복귀의 성공 여부를 확인하여 각각의 상황에 대한 처리를 해주는 것이 바람직합니다. \ EXAMPLE ````````````` - //* cemHomeMove / cemHomeMoveStart 예제를 참고하여 주시기 바랍니다. .. seealso:: :ref:`cemHomeMove`, :ref:`cemHomeMoveStart`